package com.learn.springbootnetty.tcpdemo.接收并反馈;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.Socket;

/**
 客户端:利用TCP协议发送数据
 */
public class Client {
    public static void main(String[] args) throws Exception{
        /*
            接收并反馈
            客户端:发送一条数据,接收服务端反馈的消息并打印
            服务器:接收数据并打印,再给客户端反馈消息
         */

        // 1.创建客户端的Socket对象并连接服务器
        Socket socket = new Socket("127.0.0.1", 6777);

        // 2.从连接管道中获取输出流,写出数据
        OutputStream os = socket.getOutputStream();
        // 写出数据:字节流往外写数据的时候只能写字节信息
        String str = "见到你很高兴xdh";
        os.write(str.getBytes());

        // 写出一个结束标记
        socket.shutdownOutput();

        // 3.接收服务端回写的数据
        BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        String line;
        while((line = br.readLine()) != null){
            System.out.println(line);
        }

        // 4.释放资源
        socket.close();
    }
}
